package com.elitel.frame.main.dao.ext;

import java.util.List;
import java.util.Map;

import com.elitel.frame.main.entity.BaseServices;
import com.elitel.frame.main.entity.dto.ServerQueryTypeAddDTO;
import com.elitel.frame.main.entity.dto.ServerQueryTypeDTO;
import org.apache.ibatis.annotations.Param;

/**
 * @author guoyanfei
 * @Description 扩展基本服务mapper
 */
public interface ExtBaseServicesMapper {
    /**
     * @return BaseServices集合
     * @Description 查询所有服务信息
     * @author guoyanfei
     */
    public List<BaseServices> getAllList(@Param("notIncludeGuid") String notIncludeGuid);

    /**
     * @return BaseServices集合
     * @Description 分页查询所有服务信息
     * @author guoyanfei
     */
    List<BaseServices> selectBasicByPage(Map<String, Object> map);

    /**
     * 适用于MySql数据库
     *
     * @return BaseServices集合
     * @Description 分页查询所有服务信息
     * @author guoyanfei
     */
    List<BaseServices> selectBasicByPageMySql(Map<String, Object> map);

    List<BaseServices> selectBasicByPagePG(Map<String, Object> map);

    /**
     * @return 总条数
     * @Description 查询所有服务信息总条数
     * @author guoyanfei
     */
    int selectCount(String searchContent);

    /**
     * 查看guid是否重复
     *
     * @param guid
     * @return
     */
    public int selectExit(String guid);

    List<BaseServices> getServerQueryType(ServerQueryTypeDTO queryTypeDTO);

    void saveServerQueryType(ServerQueryTypeAddDTO serverQueryTypeAddDTO);

    void updateServerQueryType(ServerQueryTypeAddDTO serverQueryTypeAddDTO);

    void delServerQueryType(String guid);

    List<BaseServices> selectNeGuidEqCode(String guid, String servicecode);
}
